# extensions.py 独立出来全局配置
from flask_caching import Cache
from flask_limiter import Limiter
from flask_limiter.util import get_remote_address
from config.app import get_config
from frame.util.CacheUtil import CacheUtil

config = get_config()

# 未绑定到应用
cache = Cache(config={'CACHE_TYPE': 'SimpleCache'})  # 初始化全局缓存实例 启用缓存

# 存储路径
storage_uri = CacheUtil.build_storage_uri(config)
# print(storage_uri)


# 使用 Redis 存储限流计数（需安装 redis 库） pip3 install flask-redis # 推荐使用 pymemcache（性能更好）
limiter = Limiter(
    key_func=get_remote_address,
    storage_uri=f"{storage_uri}",
    default_limits=["200 per day", "60 per minute"]
)
